
SYSTEM REQUIREMENTS
===================

 YChess requires a 386 processor, or higher, as well as a VGA or SVGA
graphics card.


COPYRIGHT NOTICE
================

 YCHESS 1.08 is copyright (C) 1995 Roman Antonczyk. All rights are reserved,
with the only exception that YCHESS 1.08 may be copied and distributed by 
anyone if (and only if) the archive is kept together and no fee is involved.


DISCLAIMER
==========
 
 YCHESS1.08 comes with ABSOLUTELY NO WARRANTY. No author or distributor
accepts responsibility to anyone for the consequences of using it.


STARTUP / INSTALL
=================

The directory from which 'chess' is started should contain the files
 'chess.exe' and 'book.cbk'. Upon termination of the program, the file
'chess.sav' will be created in this directory. This file saves the state of
the program on exit. When the program is restarted, the previous
settings will be restored from this file with one exception:

  * It is 'your move' after reload, even if the program was aborted
    while the computer was 'thinking'.


ENTERING MOVES
==============

 Type in the coordinates (e.g. E2E4) or select two squares using
either the cursor-keys with ENTER, or the mouse and the left mouse
button. Use BACKSPACE or DELETE to rub out characters typed using the
keyboard.
 It does not matter if the destination coordinate or origin
coordinate is typed first, either will do.


CHANGING YOUR MIND ABOUT THE MOVE
=================================

 Let's assume that you are using the mouse or cursor-keys to enter
moves and that you have typed in one coordinate (either origin or
destination of the piece being moved).
 If you change your mind, there are two ways to 'undo' the first coordinate
typed, without getting the annoying 'Illegal Move' message.

  (i) Click on the same square again. This will delete the previous entry.

 (ii) If you entered an 'origin' coordinate, select a different origin.
      Similarly, if you chose a 'destination' square, choose a different
      destination square. The program assumes that all squares containing
      friendly pieces (pieces of the side to move) are 'origin' squares
      and that all other squares are valid destinations (empty squares
      and squares containing enemy pieces).


THE CLOCKS
==========

 The clocks show the total time used up by each player. In addition,
there is an arrow pointing to the clock of the side-to-move. This arrow
points to the top clock when white is to move, else it points to the
bottom clock. The number of moves played are displayed above the clock
and the status is displayed below (Your move / Computing / Demo Mode).
 The clocks will usually count up. However, when the level "Minutes for
Game" is selected, the clocks will count down. In this case, a message
is displayed when one side exceeds the allowed time. The message 'White
(or Black) has exceeded the time limit' is then displayed when the clock
wraps 'round. A time-out-flag (an arrow pointing downwards) appears
next to the corresponding clock in this case.


LAST MOVE PLAYED
================

The last move played is displayed below the clocks. Note that "Check" will
not be indicated when "Pseudo Legal" has been selected (See there).


The Menu-Bar
============

 Commands (like 'New Game', 'Exit') are entered using the Menu-Bar. Its
operation should be familiar from other applications. If not, here's a
brief summary of how to use the menu-bar:

 Method 1:      Activate the menu using the 'TAB' key. You should see the
 (Keyboard)     first item ("File") light up. Select the item you want using
                the left and right cursor-keys. Then press either ENTER
                or UP (DOWN) to open the menu you want. Select the
                required item using the UP and DOWN cursor keys, then
                activate the item using 'ENTER'.

 Method 2:      Similar to above. Open the menu you want using 'Alt'
 (Keyboard)     together with the first letter of the required menu
                on the menu-bar.

 Method 3:      Click on the menu-bar item, then on the item in the pop-up
 (Mouse)        menu which you want to select. Use the left mouse key.


Accelerator Keys
================

 Several menu items allow the use of accelerator keys. With accelerator
keys, you can select an option without opening the corresponding menu.
The accelerator-key for an option is indicated by the green
right-aligned text in the corresponding menu. For example, to quit the
program you can select the item 'Exit' from the file-menu, but you can
also use the accelerator-key 'Alt-X'.


 With most chess programs, the menu-bar is inactive when it is the
computer's turn to move. This is not so for 'chess'. You can issue
any command any time, irrespective of weather the computer is to move or
not.


Menu Options (Summary)
=======================

    File
    ====

        Exit:   Quits the program. The current position and options are
        =====   saved in the file 'CHESS.SAV', which is reloaded when
                the program is restarted.

        About:  Displays brief copyright message and version number
        ======


    Board
    =====

        Coordinates:    Toggles the presence of the coordinate-grid on
        ============    the chess-board

        Turn Board:     Turns the chess board by 180.
        ===========

        Setup Position: Allows placing pieces on the chess-board. Note that
        =============== on exit from setup, the side to move will be the side
                        currently selected in setup. The key 'L' is used to
                        place bishops (not 'B'). This is to allow selecting
                        squares by typing the coordinate (e.g. type 'B3' to
                        select the square B3). It is assumed that the king
                        may castle when the king and the respective rook(s)
                        are on their home squares.

        New Game:       Starts a new game. If the previous game originated 
        =========       from the starting position (it wasn't entered/changed 
                        using 'Setup'), then the game may be replayed using
                        the 'Take Forward' and 'Take Back' keys.

    Move
    ====

        Hint:           Recommends a move. If it is the computer's turn,
        =====           then this is the move which is currently
                        considered best by the machine. Otherwise it is
                        the move which the computer 'thinks' to be the
                        best reply. When the position is found in the
                        opening library, then the computer will display
                        all available opening moves one by one, the most
                        likely being shown first (the move with the most
                        descendants) - This feature is especially useful
                        for beginners.

        Play:           When it is 'your turn', this forces the computer
        =====           to play the next move. When it is the computer's
                        turn, it forces the machine to play the move
                        which it currently considers best.

        Demo:           Enters selfplay mode ('Esc' or menu-option to abort).
        =====           At the end of a game, a new game will be started
                        automatically after a couple of seconds if no
                        key is pressed and the option "Continuous Demo"
                        has been selected.

        Undo Move:      Undo last move played. It is then 'Your turn', even
        ==========      if the computer was to move

        Redo Move:      Redo move undone. This feature can also be used after
        ==========      'New Game' (see there). Note that the redo
                        feature remains enabled while matching moves are
                        played. Example: The moves E2E4-E7E5, G1F3 were
                        played and then taken back. E2E4 was now played
                        again. You can still press 'Redo Move' to redo
                        'E7E5' (and again for 'G1F3').

        Go to Move:     Go to move specified. Example: Enter "10" or "10w"
        ===========     to go to the 10th move with white-to-move. Enter
                        "10b" to go to the 10th move with black-to-move.

    Options:
    ========

        Auto Reply:     When disabled, the computer will not automatically
        ===========     respond with its own move.

        Analysis:       Select this option to show the analysis window
        =========       at the bottom of the display. This shows certain
                        statistics about the move being searched. Don't
                        worry if you do not understand some of the terms
                        used in the below description, they are specific
                        to computer chess.

            Score:      The computer's evaluation of the best move in pawn
                        units, positive when the computer 'believes' to
                        be ahead. 'Book Move' is displayed when the move
                        came from the opening book. 'Chopper' is
                        displayed when the computer only had one legal
                        move (which is played immediately).

            Depth:      The number of ply searched full width.

            Move:       The move being searched, together with the position
                        of the move in the 'list of all moves', as well
                        as the number of legal moves available.

            Time:       The time spent searching to find the currently
                        best move. This includes any time which the
                        computer spent searching while it was your turn
                        (if the computer correctly predicted your move).

        Sound:          Toggles between 'Sound on' and 'Sound off'.
        ======

        Animation Speed:
        ================
                        Allows selecting the speed at which pieces
                        travel across the board.

        Various:
        ========

            Continuous Demo:    If this option is checked, then the machine
            ----------------    will start a new game five seconds after
                                completing the previous game, when in
                                selfplay mode.

            Permanent Analysis: If this option is checked, then the analysis
            ------------------- window will inform you about the position
                                currently being searched by the computer.
                                Otherwise, "Analysis" will show the position
                                searched the last time the computer was to
                                move.

        Level
        =====

            Seconds per Move:   On average, the computer will spend this
            =================   amount of time per move.

            Minutes for Game:   In this level, the clocks count
            =================   downwards (Blitz/Speed chess), Each side
                                should complete the game in the time
                                shown. When the clock has counted down,
                                a 'time-out' message will be displayed
                                once the current side has moved.
                                Nevertheless, you may still play on.

            Moves in Minutes:   The computer will play 'x' moves in 'y'
            =================   minutes (x and y as shown on the menu).

            Mate in N:          Solves mating problems. Multiple solutions
            ==========          are found by using the 'Take Back' feature
                                and then pressing 'Play' again. The next
                                alternative solution will be found. When
                                there are no further solutions, then the
                                first solution found will be found again.

            Fixed Depth:        Searches to the depth specified. This is the
            ============        minimum depth searched, certain lines of play
                                are always searched to greater depth.

            Infinite:           The computer will keep searching until 'Play'
            =========           is pressed. Under certain conditions, the
                                computer will nevertheless play its move:

                        * Maximum depth reached:
                            May happen in the end-game (highly
                            unlikely). The program has reached the
                            maximum number of moves which it can 'think
                            ahead'.

                        * Best move:
                            No better move is possible. For example, all
                            other moves lead to immediate checkmate.


            Randomizer:         When this option is enabled, then the computer
            ===========         will add a few random points to each move. 
                                This ensures that there is considerable
                                variation in the games played.

            Easy:               When enabled, the computer will "forget"
            =====               any previous computations before computing
                                its move (the Hash-Table is cleared and
                                the search is restarted, even if the
                                "permanent brain" correctly predicted your
                                move).
            
            Book Move:          When disabled, the computer has no clue
            ==========          about opening moves (this also applies
                                to the 'Hint' function - see there).

            Pseudo Legal:       Some chess players do not announce
            =============       'check' when playing speed chess. In this
                                case, if you fail to move your king out
                                of check, then your monarch is taken and
                                you loose the game. When this option is
                                selected, the computer will do just that:

                            * Check is not announced.
                            * Moves leaving the king in check, or moving
                              the king into check, may be entered. If
                              you do leave your king in check, it will
                              be captured.

            Specify:    In addition to the predefined set of choices, the
            ========    levels allow the user to enter values for the
                        precise level he wants. A dialog-box is opened
                        for this purpose. Note that clicking outside
                        the area of the dialog-box closes the dialog.
                        In this case, the levels which were entered will
                        be used if they are acceptable, else they will
                        be ignored. When a time is required, it can be
                        entered using one of the following formats:

                * No units specified, (example: "59"). In this case, the
                  default units are assumed. They are minutes for the
                  levels "Moves in Minutes" and "Minutes for Game", but
                  seconds for the level "second per move".

                * Units are specified, (example: "73m"). This will set
                  the time to 73 minutes. Allowed units are "h", "m",
                  "s" for hours, minutes and seconds respectively.
                  You can specify a time using combined units,
                  "1h90m" will set the time to one hour and 90 minutes,
                  "1h30s" will set the time to one hour and 30 seconds
                  and finally, "10h5m17s" will set the level to ten
                  hours, five minutes and seventeen seconds. You must
                  specify hours before minutes and minutes before
                  seconds, for example "10m5h" is not allowed.
                  Finally, "50h10" can be entered instead of "50h10m",
                  "50m10" can be entered instead of "50m10s".

                An error-box "Illegal time" will be displayed if you
                enter an illegal time. "Overflow" will be displayed
                if one of the values entered is too large.


        ------------------------    
    
    ESCAPE
    ======

     The 'Escape' key aborts any computation being made. It will then be
    your move.
    
    
    BOOK MOVES
    ==========

     Here are some brief notes on the book move module:

        * Any book position is recognized irrespective of the moves
          leading to that position.

        * When white wastes a tempo, the computer may play the opening
          usually played by white using the black pieces.

            Example (computer is black):

            1) E2E3 E7E5
            2) E3E4  ?

            By symmetry, this is the same as 'E2E4,E7E5' and hence the
            computer will continue playing any opening usually played by
            white using the black pieces.


    CHOPPER
    =======

     When there is only one legal move, then the computer will play
    this move immediately, without conducting any search. However,
    the move will be searched nevertheless when the level "Mate in N"
    has been selected, or when the position is a known endgame position.


    ENDGAME POSITIONS
    =================

     The endgames "King+Rook vs. King" and "King+Queen vs. King" are known
    to the program. These are played and scored perfectly.


    Multiple solutions to mating problems and endgame positions
    ===========================================================

     To get an alternative solution, press "Take-Back" and then press
    "Play". The computer will sort the moves in such a way that the move
    stored in the "Take-Back" list will be searched last, therefore finding
    any alternative solution before investigating this move.


    PAUSING THE GAME
    ================

     The game is paused while the menu-bar is active, or when one of the
    menus has been opened. No computations are done during that time.    
